h2::after {
  background: linear-gradient(to right, #1a1a1a 0px, #1a1a1a 10px, #124e84 10px, #124e84 80px);
  bottom: 10px;
  display: block;
  content: "";
  height: 2px;
  margin: 10px 0 20px 0;
  width: 80px;
}

body {
  background-image: url("https://jbu_ftp.sidearmsports.com/custompages/css/gameday/background-blue-repeat.jpg");
  background-repeat: repeat;
  background-color: #eeef0;
}

/* Legacy Vault card grid */
.legacy-card-grid {
  width: 100%;
  max-width: 1416px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 42px 30px;
}

.legacy-card {
  min-width: 0;
  display: flex;
  flex-direction: column;
  text-decoration: none;
}

.legacy-card-title i {
  margin-right: 5px;
  color: #212121;
}

.legacy-card-feature {
  grid-column: span 2;
}

/* Photo area */
.legacy-card-image-wrap {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 3 / 2;
  overflow: hidden;
  border-radius: 9px;
  background-color: #212121;
}

.legacy-card-feature .legacy-card-image-wrap {
  aspect-ratio: 3 / 1;
}

.legacy-card-image {
  position: absolute;
  inset: 0;
  display: block;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  transform: scale(1);
  transition: transform 0.45s ease;
}

.legacy-card:hover .legacy-card-image,
.legacy-card:focus .legacy-card-image {
  transform: scale(1.055);
}

/* Title below the image, BYU-style */
.legacy-card-title {
  display: block;
  margin-top: 14px;
  padding: 0 8px;
  color: #124e84;
  font-size: clamp(.8rem, 1vw, 1rem);
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  text-transform: none;
  transition: color 0.25s ease;
}

.legacy-card:hover .legacy-card-title,
.legacy-card:focus .legacy-card-title {
  color: #124e84;
}

.legacy-card:focus-visible .legacy-card-image-wrap {
  outline: 3px solid #f9ca24;
  outline-offset: 3px;
}

/* Existing Legacy Vault photography */
.legacy-card-all-americans {
  background-image: url("https://jbu_ftp.sidearmsports.com/custompages/css/sport-file-assets/legacy-vault-all-americans.jpg");
}

.legacy-card-hall-of-fame {
  background-image: url("https://jbu_ftp.sidearmsports.com/custompages/css/sport-file-assets/legacy-vault-hall-of-fame.jpg");
}

.legacy-card-wall-of-fame {
  background-image: url("https://jbu_ftp.sidearmsports.com/custompages/css/sport-file-assets/legacy-vault-wall-of-fame.jpg");
}

.legacy-card-conference-championships {
  background-image: url("https://jbu_ftp.sidearmsports.com/custompages/css/sport-file-assets/legacy-vault-team-championships.jpg");
}

.legacy-card-commissioners-cup {
  background-image: url("https://jbu_ftp.sidearmsports.com/custompages/css/sport-file-assets/legacy-vault-commissioners-cup.jpg");
}

.legacy-card-regal {
  background-image: url("https://jbu_ftp.sidearmsports.com/custompages/css/sport-file-assets/legacy-vault-regal.jpg");
  background-position: center center;
}

/* Two columns on medium screens */
@media (max-width: 1000px) {
  .legacy-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 34px 24px;
  }

  .legacy-card-feature {
    grid-column: span 1;
  }

  .legacy-card-feature .legacy-card-image-wrap {
    aspect-ratio: 3 / 2;
  }
}

/* One column on phones */
@media (max-width: 620px) {
  .legacy-card-grid {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .legacy-card-image-wrap,
  .legacy-card-feature .legacy-card-image-wrap {
    aspect-ratio: 16 / 9;
  }

  .legacy-card-title {
    margin-top: 11px;
    font-size: 1.05rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .legacy-card-image,
  .legacy-card-title {
    transition: none;
  }
}
